Dynamic evolution of software processes to evolve software systems during their development

نویسندگان

  • Sami Beydeda
  • Volker Gruhn
چکیده

A software system, once deployed into its target environment, might need to be modified for various reasons. The reasons might be specific to that software system, such as failures, or, more general, such as changes in the environment in which the software system is embedded. Depending on the reason, a modification might obviously not only be restricted to a particular software system. It might also concern other existing software systems and particularly also software systems under development. The modification of a software system under development is merely a problem of modifying its development process, also called software process. Such modifications generally cannot be automatically carried out by autonomous process support systems due to the complexity inherent in software processes and in the necessary modifications. It usually needs to be guided by a human process manager. A process support system can, however, offer the human process manager certain services to assist in modifying a software process. One of these services is that of decision support. This article describes a decision support system developed in the ESPRIT project Process Instance Evolution (PIE). One of the features of the decision support system is an extendable database of decision models, each of which is capable of generating specific information to assist the process manager. One of these models is that of risk analysis. Risk analysis, as used in this context, encompasses assessment of the impact of a possible modification on certain software process attributes before actually changing a software process. Copyright  2004 John Wiley & Sons, Ltd.

برای دانلود رایگان متن کامل این مقاله و بیش از 32 میلیون مقاله دیگر ابتدا ثبت نام کنید

ثبت نام

اگر عضو سایت هستید لطفا وارد حساب کاربری خود شوید

منابع مشابه

Supporting Software Development Process Using Evolution Analysis : a Brief Survey

During development process, software systems constantly evolve to meet the system’s functional and non-functional requirements. Analyzing the series of changes made during software development processes helps extracting best practices to consistently maintain, evolve, test and improve software systems. This paper presents a brief survey on software evolution analysis methods. This study classif...

متن کامل

Studying Software Evolution Using Clone Detection

In modern software engineering, researchers regard a software system as an organic life form that must continue to evolve to remain successful. Unfortunately, little is known about how successful software systems have evolved, and consequently little has been learned from previous experience. In this paper, we demonstrate a heuristic to reconstruct evolution processes of existing software syste...

متن کامل

Runtime Evolution of Highly Dynamic Software

Highly dynamic software systems are applications whose operations are particularly affected by changing requirements and uncertainty in their execution environments. Ideally such systems must evolve while they execute. To achieve this, highly dynamic software systems must be instrumented with self-adaptation mechanisms to monitor selected requirements and environment conditions to assess the ne...

متن کامل

Dynamic Architecture Based Evolution of Enterprise Information Systems

Enterprise Information Systems have to co-evolve with the enterprise they support. Their evolution is the one of an important software system. Software evolution should be addressed at all developpement phases in order to notably reduce costs (Lehman, 1996). The issue of software systems evolution has been addressed mainly at the code level. In this paper we present how evolution of enterprise ...

متن کامل

Modeling and Analyzing Software Architecture Using Object-Oriented Petri Nets and π-calculus

Software architecture has recently emerged as a new discipline of software engineering to effectively develop and maintain complex and large-scale software systems and reduce costs of developing applications. Software architecture provides a high-level abstraction for representing components, their relationships to each other and environment, and their constraints. The overall system structure ...

متن کامل

ذخیره در منابع من


  با ذخیره ی این منبع در منابع من، دسترسی به آن را برای استفاده های بعدی آسان تر کنید

عنوان ژورنال:
  • Software Process: Improvement and Practice

دوره 9  شماره 

صفحات  -

تاریخ انتشار 2004